com.highdeal.pnr.hci
Class SubscriptionModel

java.lang.Object
  extended by com.highdeal.pnr.hci.SubscriptionModel
All Implemented Interfaces:
XMLMarshallable

public class SubscriptionModel
extends java.lang.Object
implements XMLMarshallable

This Java class represents a subscription in customer master data owned by a service provider; A subscription represents a business agreement between an end customer and the service provider. It includes subscribed pricing information, customer information, and the associated subscriber account that holds this subscription.

It is the result of an service offer that is subscribed to by an end customer of the service provider as part of a commercial agreement.

When a subscription is created, all the mandatory charges of the related offer are automatically activated. Charges and suboffers of the related subscription can then be activated according to the subscriber contract.

Features

Structure

A subscription may contain several sub-subscriptions, which represents subscriptions to suboffers of the root offer.

A subscription includes both a subscription context and a chronology of subscription contexts.

Type

A subscription can be:

Parameter Configuration

A subscription includes parameters at different levels:

Modifying a parameter in a subscription, whatever its level, represents the same operation as:

The simplest way to do this is:

Notes

See Also:
CreateSubscriptionOp, ModifySubscriptionOp, ImportSubscriberDataOp, ExportSubscriberDataOp

XML API for HCI

The XML APIs specify the following XSD fragment:

XSD Fragment

<xs:element name="subscription">
   <xs:complexType>
     <xs:sequence>
       <xs:element ref="subscriptionContext" minOccurs="0" maxOccurs="1"/>
       <xs:element ref="subscription" minOccurs="0" maxOccurs="unbounded"/>
       <xs:element ref="chargeActivation" minOccurs="0" maxOccurs="unbounded"/>
       <xs:element ref="additionalInformation" minOccurs="0" maxOccurs="unbounded"/>
       <xs:element ref="counter" minOccurs="0" maxOccurs="unbounded"/>
       <xs:element name="subscriptionContextChronology" minOccurs="1" maxOccurs="1">
         <xs:complexType>
           <xs:sequence>
             <xs:element ref="chronology" minOccurs="1" maxOccurs="1"/>
           </xs:sequence>
         </xs:complexType>
       </xs:element>
     </xs:sequence>
     <xs:attribute name="code" type="xs:string"/> <!-- mandatory for a root subscription -->
     <xs:attribute name="reference" type="xs:string"/>
     <xs:attribute name="offerCode" type="xs:string"/> <!-- required for a root subscription -->
     <xs:attribute name="offerConditionCode" type="xs:string"/> <!-- mandatory for a root subscription -->
     <xs:attribute name="subscriberAccountCode" type="xs:string" use="required"/>
     <xs:attribute name="subscriberAccountServiceProvider" type="xs:string" use="required"/>
     <xs:attribute name="reratingLockCode" type="xs:string"/>
     <xs:attribute name="reratingLastCode" type="xs:string"/>
     <xs:attribute name="reratingLastStatus" type="ReratingLastStatusType"/>
     <xs:attribute name="reratingSuggestedDate" type="xs:dateTime"/>
     <xs:attribute name="type" type="SubscriptionTypeType"/>
     <xs:attribute name="batchRatingGroupCode" type="xs:string"/>
     <xs:attribute name="effective" type="xs:dateTime"/> <!-- mandatory for a root subscription -->
     <xs:attribute name="expiration" type="xs:dateTime"/>
     <xs:attribute name="priceFreezeEffective" type="xs:dateTime"/>
     <xs:attribute name="priceFreezeExpiration" type="xs:dateTime"/>
     <xs:attribute name="commitmentExpiration" type="xs:dateTime"/>
     <xs:attribute name="suspensionDate" type="xs:dateTime"/>
     <xs:attribute name="resumptionDate" type="xs:dateTime"/>
     <xs:attribute name="cancellationDate" type="xs:dateTime"/>
     <xs:attribute name="lastSnapshotDate" type="xs:dateTime"/>
     <xs:attribute name="overrideDependencies" type="xs:boolean" use="optional"/>
   </xs:complexType>
 </xs:element>

 <xs:simpleType name="SubscriptionTypeType">
   <xs:restriction base="xs:string">
      <xs:enumeration value="online"/>
      <xs:enumeration value="hybrid"/>
      <xs:enumeration value="offline"/>
   </xs:restriction>
 </xs:simpleType>

 <xs:simpleType name="ReratingLastStatusType">
   <xs:restriction base="xs:string">
     <xs:enumeration value="alreadyLockedFailure"/>
     <xs:enumeration value="counterRestorationFailure"/>
     <xs:enumeration value="billingFailure"/>
     <xs:enumeration value="bartRestorationFailure"/>
     <xs:enumeration value="exportFailure"/>
     <xs:enumeration value="unlockFailure"/>
     <xs:enumeration value="exportAndUnlockFailure"/>
     <xs:enumeration value="restorationSuccess"/>
     <xs:enumeration value="reratingSuccess"/>
   </xs:restriction>
 </xs:simpleType>

 <xs:element name="subscriptionContextChronology">
   <xs:complexType>
     <xs:sequence>
       <xs:element ref="chronology" minOccurs="1" maxOccurs="1"/>
     </xs:sequence>
   </xs:complexType>
 </xs:element>


Nested Class Summary
static class SubscriptionModel.SubscriptionType
           
 
Field Summary
static int ACTIVE_STATUS
          Status for active subscription.
static int CLOSED_STATUS
          Status for closed subscription.
static int LOCKED_STATUS
          Status for locked subscription.
static java.lang.String NAME
          The XML tag name of this data model: "subscription"
 
Constructor Summary
SubscriptionModel()
          Builds an empty SubscriptionModel.
 
Method Summary
 void addCharacterData(java.lang.String cData)
          Adds character data to the content element.
 void addChargeActivation(ChargeActivationModel activation)
           
 void addChargeActivation(ChargeActivationModel activation, boolean generateSubCode)
           
 void addChild(java.lang.String name, XMLMarshallable child)
          Adds a child to the object, the child representing the marshallable object which must be added to the element.
 void addSubscription(SubscriptionModel sub)
           
 java.util.Vector<AdditionalInfoModel> getAdditionalInfos()
          Returns the list of AdditionalInfoModel.
 java.lang.String getBatchRatingGroupCode()
          Returns the batch rating group code that subscription has registered to; If batch rating group code is null, this subscription is online.
 java.util.Date getCancellationDate()
          Returns the cancellation date of this subscription.
 java.util.Vector<ChargeActivationModel> getChargeActivations()
          Returns the list of ChargeActivationModel.
 java.lang.String getCode()
          Returns the identification code of this subscription.
 java.util.Date getCommitmentExpiration()
          Returns the commitment expiration date of this subscription.
 SubscriptionContextModel getContext()
          Returns the subscription context.
 ChronologyModel getContextChronology()
          Returns the offer context chronology of this subscription.
 java.util.Vector<CounterModel> getCounters()
          Returns the list of CounterModel.
 java.util.Date getEffective()
          Returns the effective date of this subscription.
 java.util.Date getExpiration()
          Returns the expiration date of this subscription.
 java.util.Date getLastSnapshotDate()
          Returns the last snapshot date of this subscription.
 java.lang.String getOfferCode()
          Returns the code of the subscribed offer.
 java.lang.String getOfferConditionCode()
          Returns the code of the offer condition of the subscribed offer.
 SubscriptionModel getParent()
          Returns the subscription parent.
 java.util.Date getPriceFreezeEffective()
          Returns the price freeze effective date of this subscription.
 java.util.Date getPriceFreezeExpiration()
          Returns the price freeze expiration date of this subscription.
 java.lang.String getReference()
          Returns the reference of this subscription.
 java.lang.String getReratingLastCode()
          Returns the last rerating code of this subscription; This code corresponds to the last rerating operation identifier that has been launched on this subscription.
 ReratingStatus getReratingLastStatus()
          Returns the rerating status of the subscription; This field maintains the last rerating state of the subscription.
 java.lang.String getReratingLockCode()
          Gets the code of the rerating operation that has locked this subscription; This code can be set for offline subscription only.
 java.util.Date getReratingSuggestedDate()
          Returns the suggested rerating date.
 java.util.Date getResumptionDate()
          Returns the resumption date of this subscription.
 java.lang.String getSubscriberAccountCode()
          Returns the code of the subscriber account for this subscription.
 java.lang.String getSubscriberAccountServiceProvider()
          Returns the service provider of the subscriber account for this subscription.
 java.util.Vector<SubscriptionModel> getSubscriptions()
          Returns the subscriptions.
 java.util.Date getSuspensionDate()
          Returns the suspension date of this subscription.
 SubscriptionModel.SubscriptionType getType()
          Returns the type of the subscription; Its type may be online, hybrid or offline
 boolean isOverrideDependencies()
          Returns whether the subscription overrides the charge dependencies of the offer.
 void marshal(XMLOutputter output)
          Gives an XML representation of this object, including its children.
 void removeSubscription(SubscriptionModel sub)
           
 java.util.Vector<ChargeActivationModel> retrieveAllCharges()
          Returns the charge activations of this subscription and all the charge activations of its sub-subcriptions.
 java.util.Vector<SubscriptionModel> retrieveAllSubscriptions()
          Returns all the subscriptions which has this subscription as ancestor.
 java.util.Vector<ChargeActivationModel> retrieveInvalidChargeSubCodes()
          Returns all the invalid charge activation subcodes.
 void setAttributes(XMLAttributes atts)
          Sets the attributes of the XML representation of the element being processed.
 void setBatchRatingGroupCode(java.lang.String batchRatingGroupCode)
          Sets the batch rating group code that subscription must registered to; Batch rating group code must be set to null if subscription is online.
 void setCancellationDate(java.util.Date cancellationDate)
          Sets the cancellation date of this subscription.
 void setCode(java.lang.String code)
          Sets the identification code for this subscription.
 void setCommitmentExpiration(java.util.Date commitmentExpiration)
          Sets the commitment expiration date of this subscription.
 void setContext(SubscriptionContextModel context)
          Sets the context of this subscription.
 void setEffective(java.util.Date effective)
          Sets the effective date of this subscription.
 void setExpiration(java.util.Date expiration)
          Sets the expiration date of this subscription.
 void setLastSnapshotDate(java.util.Date lastSnapshotDate)
          Sets the last snapshot date of this subscription.
 void setOfferCode(java.lang.String offerCode)
          Sets the code of the subscribed offer.
 void setOfferConditionCode(java.lang.String offerConditionCode)
          Sets the code of the offer condition of the subscribed offer.
 void setOverrideDependencies(boolean override)
          Sets whether the subscription overrides the charge dependencies of the offer.
 void setParent(SubscriptionModel parent)
          Sets the parent for this subscription.
 void setPriceFreezeEffective(java.util.Date priceFreezeEffective)
          Sets the price freeze effective date of this subscription.
 void setPriceFreezeExpiration(java.util.Date priceFreezeExpiration)
          Sets the price freeze expiration date of this subscription.
 void setReference(java.lang.String reference)
          Sets the reference of this subscription.
 void setReratingLastCode(java.lang.String reratingLastCode)
          Sets the last rerating code of this subscription; This code corresponds to the last rerating operation identifier that has been launched on this subscription.
 void setReratingLastStatus(ReratingStatus reratingLastStatus)
          Sets the rerating status of the subscription, which must be a value among ReratingStatus.ALREADY_LOCKED_FAILURE, ReratingStatus.COUNTER_RESTORATION_FAILURE or ReratingStatus.BILLING_FAILURE for failure types or ReratingStatus.RESTORATION_SUCCESS or ReratingStatus.RERATING_SUCCESS for success types.
 void setReratingLockCode(java.lang.String reratingLockCode)
          Sets the code of the rerating operation that has locked this subscription; Changing this code has not effect on the subscription.
 void setReratingSuggestedDate(java.util.Date reratingSuggestedDate)
          Sets the suggested rerating date.
 void setResumptionDate(java.util.Date resumptionDate)
          Sets the resumption date of this subscription.
 void setSubscriberAccountCode(java.lang.String subscriberAccountCode)
          Sets the identification code of the subscriber account belonging this subscription.
 void setSubscriberAccountServiceProvider(java.lang.String subscriberAccountServiceProvider)
          Sets the service provider of the subscriber account for this subscription.
 void setSuspensionDate(java.util.Date suspensionDate)
          Sets the suspension date of this subscription.
 void setType(SubscriptionModel.SubscriptionType type)
          Sets the subscription to online, hybrid or offline; The default value is hybrid.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ACTIVE_STATUS

public static final int ACTIVE_STATUS
Status for active subscription. Reserved for internal use.

See Also:
Constant Field Values

LOCKED_STATUS

public static final int LOCKED_STATUS
Status for locked subscription. Reserved for internal use.

See Also:
Constant Field Values

CLOSED_STATUS

public static final int CLOSED_STATUS
Status for closed subscription. Reserved for internal use.

See Also:
Constant Field Values

NAME

public static final java.lang.String NAME
The XML tag name of this data model: "subscription"

See Also:
Constant Field Values
Constructor Detail

SubscriptionModel

public SubscriptionModel()
Builds an empty SubscriptionModel.

Method Detail

getParent

public SubscriptionModel getParent()
Returns the subscription parent.

Returns:
The subscription parent
See Also:
setParent(SubscriptionModel)

setParent

public void setParent(SubscriptionModel parent)
Sets the parent for this subscription.

Parameters:
parent - The parent of the subscription
See Also:
getParent()

getCode

public java.lang.String getCode()
Returns the identification code of this subscription.

Returns:
This subscription identification code
See Also:
setCode(String)

setCode

public void setCode(java.lang.String code)
Sets the identification code for this subscription.

Parameters:
code - The identification code of subscription
See Also:
getCode()

getReference

public java.lang.String getReference()
Returns the reference of this subscription.

Returns:
This subscription reference
See Also:
setReference(String)

setReference

public void setReference(java.lang.String reference)
Sets the reference of this subscription.

Parameters:
reference - The reference of subscription
See Also:
getReference()

getSubscriberAccountCode

public java.lang.String getSubscriberAccountCode()
Returns the code of the subscriber account for this subscription.

Returns:
The subscriber account code for this subscription

setSubscriberAccountCode

public void setSubscriberAccountCode(java.lang.String subscriberAccountCode)
Sets the identification code of the subscriber account belonging this subscription.

Parameters:
subscriberAccountCode - The identification code of the subscriber account for this subscription

getSubscriberAccountServiceProvider

public java.lang.String getSubscriberAccountServiceProvider()
Returns the service provider of the subscriber account for this subscription.

Returns:
The subscriber account service provider for this subscription

setSubscriberAccountServiceProvider

public void setSubscriberAccountServiceProvider(java.lang.String subscriberAccountServiceProvider)
Sets the service provider of the subscriber account for this subscription.

Parameters:
subscriberAccountServiceProvider - The subscriber account service provider for this subscription

getOfferCode

public java.lang.String getOfferCode()
Returns the code of the subscribed offer.

Returns:
The code of the subscribed offer
See Also:
setOfferCode(String)

setOfferCode

public void setOfferCode(java.lang.String offerCode)
Sets the code of the subscribed offer.

Parameters:
offerCode - The code
See Also:
getOfferCode()

getOfferConditionCode

public java.lang.String getOfferConditionCode()
Returns the code of the offer condition of the subscribed offer.

Returns:
The code of the offer condition of the subscribed offer
See Also:
setOfferConditionCode(String)

setOfferConditionCode

public void setOfferConditionCode(java.lang.String offerConditionCode)
Sets the code of the offer condition of the subscribed offer.

Parameters:
offerConditionCode - The code of the offer condition
See Also:
getOfferConditionCode()

getReratingLockCode

public java.lang.String getReratingLockCode()
Gets the code of the rerating operation that has locked this subscription; This code can be set for offline subscription only. The lock code corresponds to the rerating operation identifier.

Returns:
The code of the rerating operation that has locked this subscription

setReratingLockCode

public void setReratingLockCode(java.lang.String reratingLockCode)
Sets the code of the rerating operation that has locked this subscription; Changing this code has not effect on the subscription. If needed, use the operation UnlockSubscriptionOp instead.

Parameters:
reratingLockCode - The code of the rerating operation that has locked this subscription

getBatchRatingGroupCode

public java.lang.String getBatchRatingGroupCode()
Returns the batch rating group code that subscription has registered to; If batch rating group code is null, this subscription is online.

Returns:
The batch rating group code

setBatchRatingGroupCode

public void setBatchRatingGroupCode(java.lang.String batchRatingGroupCode)
Sets the batch rating group code that subscription must registered to; Batch rating group code must be set to null if subscription is online.

Parameters:
batchRatingGroupCode - The batch rating group code

getType

public SubscriptionModel.SubscriptionType getType()
Returns the type of the subscription; Its type may be online, hybrid or offline

Returns:
The type of the subscription which is one of the values online, hybrid, or offline

setType

public void setType(SubscriptionModel.SubscriptionType type)
Sets the subscription to online, hybrid or offline; The default value is hybrid.

Parameters:
type - Must be one of the values online, hybrid, or offline

getReratingLastStatus

public ReratingStatus getReratingLastStatus()
Returns the rerating status of the subscription; This field maintains the last rerating state of the subscription. It can be one state among ReratingStatus.ALREADY_LOCKED_FAILURE, ReratingStatus.COUNTER_RESTORATION_FAILURE or ReratingStatus.BILLING_FAILURE for failure types or ReratingStatus.RESTORATION_SUCCESS or ReratingStatus.RERATING_SUCCESS for success types.

Returns:
The rerating state of the subscription
See Also:
in order to get the associated rerating operation code, setReratingLastStatus(ReratingStatus)

setReratingLastStatus

public void setReratingLastStatus(ReratingStatus reratingLastStatus)
Sets the rerating status of the subscription, which must be a value among ReratingStatus.ALREADY_LOCKED_FAILURE, ReratingStatus.COUNTER_RESTORATION_FAILURE or ReratingStatus.BILLING_FAILURE for failure types or ReratingStatus.RESTORATION_SUCCESS or ReratingStatus.RERATING_SUCCESS for success types.

Parameters:
reratingLastStatus - The rerating state of the subscription
See Also:
getReratingLastStatus()

getReratingSuggestedDate

public java.util.Date getReratingSuggestedDate()
Returns the suggested rerating date.

Returns:
The suggested rerating date

setReratingSuggestedDate

public void setReratingSuggestedDate(java.util.Date reratingSuggestedDate)
Sets the suggested rerating date.

Parameters:
reratingSuggestedDate - The suggested rerating date

getEffective

public java.util.Date getEffective()
Returns the effective date of this subscription.

Returns:
This subscription effective date
See Also:
setEffective(Date)

setEffective

public void setEffective(java.util.Date effective)
Sets the effective date of this subscription.

Parameters:
effective - The effective date of the subscription
See Also:
getEffective()

getExpiration

public java.util.Date getExpiration()
Returns the expiration date of this subscription.

Returns:
This subscription expiration date
See Also:
setExpiration(Date)

setExpiration

public void setExpiration(java.util.Date expiration)
Sets the expiration date of this subscription.

Parameters:
expiration - The expiration date of the subscription
See Also:
getExpiration()

getLastSnapshotDate

public java.util.Date getLastSnapshotDate()
Returns the last snapshot date of this subscription.

Returns:
The snapshot date of the subscription
See Also:
setLastSnapshotDate(Date)

setLastSnapshotDate

public void setLastSnapshotDate(java.util.Date lastSnapshotDate)
Sets the last snapshot date of this subscription.

Parameters:
lastSnapshotDate - The snapshot date of the subscription
See Also:
getLastSnapshotDate()

getReratingLastCode

public java.lang.String getReratingLastCode()
Returns the last rerating code of this subscription; This code corresponds to the last rerating operation identifier that has been launched on this subscription.

Returns:
The last rerating operation code of the subscription
See Also:
setReratingLastCode(String), in order to get the associated rerating status

setReratingLastCode

public void setReratingLastCode(java.lang.String reratingLastCode)
Sets the last rerating code of this subscription; This code corresponds to the last rerating operation identifier that has been launched on this subscription.

Parameters:
reratingLastCode - The last rerating operation code of the subscription
See Also:
getReratingLastCode()

getPriceFreezeEffective

public java.util.Date getPriceFreezeEffective()
Returns the price freeze effective date of this subscription.

Returns:
This subscription price freeze effective date
See Also:
setPriceFreezeEffective(Date)

setPriceFreezeEffective

public void setPriceFreezeEffective(java.util.Date priceFreezeEffective)
Sets the price freeze effective date of this subscription.

Parameters:
priceFreezeEffective - The price freeze effective date of the subscription
See Also:
getPriceFreezeEffective()

getPriceFreezeExpiration

public java.util.Date getPriceFreezeExpiration()
Returns the price freeze expiration date of this subscription.

Returns:
This subscription price freeze expiration date
See Also:
setPriceFreezeExpiration(Date)

setPriceFreezeExpiration

public void setPriceFreezeExpiration(java.util.Date priceFreezeExpiration)
Sets the price freeze expiration date of this subscription.

Parameters:
priceFreezeExpiration - The priceFreeze expiration date of the subscription
See Also:
getPriceFreezeExpiration()

getCommitmentExpiration

public java.util.Date getCommitmentExpiration()
Returns the commitment expiration date of this subscription.

Returns:
This subscription commitment expiration date
See Also:
setCommitmentExpiration(Date)

setCommitmentExpiration

public void setCommitmentExpiration(java.util.Date commitmentExpiration)
Sets the commitment expiration date of this subscription.

Parameters:
commitmentExpiration - The commitmentExpiration date of the subscription
See Also:
getCommitmentExpiration()

getSuspensionDate

public java.util.Date getSuspensionDate()
Returns the suspension date of this subscription.

Returns:
This subscription suspension date
See Also:
setSuspensionDate(Date)

setSuspensionDate

public void setSuspensionDate(java.util.Date suspensionDate)
Sets the suspension date of this subscription.

Parameters:
suspensionDate - The suspension date of the subscription
See Also:
getSuspensionDate()

getResumptionDate

public java.util.Date getResumptionDate()
Returns the resumption date of this subscription.

Returns:
This subscription resumption date
See Also:
setResumptionDate(Date)

setResumptionDate

public void setResumptionDate(java.util.Date resumptionDate)
Sets the resumption date of this subscription.

Parameters:
resumptionDate - The resumption date of the subscription
See Also:
getResumptionDate()

getCancellationDate

public java.util.Date getCancellationDate()
Returns the cancellation date of this subscription.

Returns:
This subscription cancellation date
See Also:
setCancellationDate(Date)

setCancellationDate

public void setCancellationDate(java.util.Date cancellationDate)
Sets the cancellation date of this subscription.

Parameters:
cancellationDate - he cancellation date of the subscription
See Also:
getCancellationDate()

isOverrideDependencies

public boolean isOverrideDependencies()
Returns whether the subscription overrides the charge dependencies of the offer.

Returns:
true if the subscription overrides the charge dependencies of the offer, false otherwise

setOverrideDependencies

public void setOverrideDependencies(boolean override)
Sets whether the subscription overrides the charge dependencies of the offer.

Parameters:
override - true if the subscription overrides the charge dependencies of the offer, false otherwise

getSubscriptions

public java.util.Vector<SubscriptionModel> getSubscriptions()
Returns the subscriptions.

Returns:
The subscriptions

getChargeActivations

public java.util.Vector<ChargeActivationModel> getChargeActivations()
Returns the list of ChargeActivationModel.

Returns:
The list of the associated charge activations

getAdditionalInfos

public java.util.Vector<AdditionalInfoModel> getAdditionalInfos()
Returns the list of AdditionalInfoModel.

Returns:
The list of the associated additional information items

getCounters

public java.util.Vector<CounterModel> getCounters()
Returns the list of CounterModel.

Returns:
The list of the associated counters

getContextChronology

public ChronologyModel getContextChronology()
Returns the offer context chronology of this subscription.

Returns:
All the subscription contexts in a chronology

setContext

public void setContext(SubscriptionContextModel context)
Sets the context of this subscription.

Parameters:
context - The context of this subscription

getContext

public SubscriptionContextModel getContext()
Returns the subscription context.

Returns:
The context of this subscription

setAttributes

public void setAttributes(XMLAttributes atts)
Description copied from interface: XMLMarshallable
Sets the attributes of the XML representation of the element being processed.

Specified by:
setAttributes in interface XMLMarshallable
Parameters:
atts - The XML attributes of the current element

addChild

public void addChild(java.lang.String name,
                     XMLMarshallable child)
Description copied from interface: XMLMarshallable
Adds a child to the object, the child representing the marshallable object which must be added to the element.

Specified by:
addChild in interface XMLMarshallable
Parameters:
name - The name of tag for the child
child - The child to be added

addCharacterData

public void addCharacterData(java.lang.String cData)
Description copied from interface: XMLMarshallable
Adds character data to the content element.

Specified by:
addCharacterData in interface XMLMarshallable
Parameters:
cData - The character data to be added

marshal

public void marshal(XMLOutputter output)
Description copied from interface: XMLMarshallable
Gives an XML representation of this object, including its children.

Specified by:
marshal in interface XMLMarshallable
Parameters:
output - The XML output to marshal the object into

removeSubscription

public void removeSubscription(SubscriptionModel sub)

addSubscription

public void addSubscription(SubscriptionModel sub)

addChargeActivation

public void addChargeActivation(ChargeActivationModel activation)

addChargeActivation

public void addChargeActivation(ChargeActivationModel activation,
                                boolean generateSubCode)

retrieveAllCharges

public java.util.Vector<ChargeActivationModel> retrieveAllCharges()
Returns the charge activations of this subscription and all the charge activations of its sub-subcriptions.

Returns:
A list of charge activations

retrieveAllSubscriptions

public java.util.Vector<SubscriptionModel> retrieveAllSubscriptions()
Returns all the subscriptions which has this subscription as ancestor.

Returns:
A list of subscriptions

retrieveInvalidChargeSubCodes

public java.util.Vector<ChargeActivationModel> retrieveInvalidChargeSubCodes()
Returns all the invalid charge activation subcodes.

Returns:
A list of charge activations

Document Published: October 2015 (SAP CC 4.0 SP10 and Later)